/*************************************************************************
 * 文件名称：
 * 作    者：Smile
 * 创建时间：
 * 模块名称：无边框窗口  NoborderWidget
 * 结    构：
 *          NoborderWidget 最底层  不显示
 *          mainwidget     下一层  显示 圆角-阴影
 *          titlebar 标题栏  editwidget 编辑区域
 * 主要函数：
 * 功    能：
 * 版    本：1.0
 * 与其他文件的关系：
 * 教程来源：
 * 修改记录：
  * 1.0->
     * 初始化代码
 * 1.2->
     *
 ************************************************************************/
#ifndef NOBORDERWIDGET_H
#define NOBORDERWIDGET_H

#include "titlebar.h"

#include <QWidget>

class NoborderWidget : public QWidget
{
    Q_OBJECT

public:
    NoborderWidget(QWidget *parent = nullptr);
    ~NoborderWidget();
    // 初始化界面
    void initGUI();
    // 窗口阴影 无边框
    void shadeGUI();

private:

    void mouseDoubleClickEvent(QMouseEvent *event) override;
    void paintEvent(QPaintEvent *event) override;

#if defined (Q_OS_WINDOWS)
    // Windows环境 处理系统原生事件
    bool nativeEvent(const QByteArray &eventType, void *message, long *result) override;
#endif

    // 主要的操作窗口
    QWidget *mainwidget;

    TitleBar *titlebar;  // 标题栏
    QWidget *editwidget; // 编辑区域

    int m_nBorderWidth = 5;

private slots:
    void closeCallback();
};
#endif // NOBORDERWIDGET_H
